package com.csii.adhoc.dataunits;

import com.csii.adhoc.dataready.TDataCondPo;
import com.csii.adhoc.dataready.TDataCondVo;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedHashMap;
import java.util.List;

public class UnitModifyReq {

    private String modelId = "";
    private String unitId = "";
    private String unitName = "";
    private String token;

    //sql column，sql 指定返回的 sql 列，
    private String[] sqlColumn;

    // 当前所选表的 id，对应于 t_data_from 表中 table_id 键
    private String tableId = "";

    // 当前页号
    private Integer pageNum;

    // 每页最大允许记录数
    private Integer pageSize;

    // 前端要求展示的类型 1-交叉表 2-明细表 3
    private Integer type;

    // 条件组
    private List<TDataCondVo> condition;

    // 组件级 echarts 属性组
    private String widgets = "";

    // 组件 themes // 样式组
    private String themes = "";

    // 已选维度,当输入选择只有：维度和度量时，这里表示维度，当输入选择有：行维度和列维度、度量时，这里表示行维度
    private List<TextSelected> textFields1 = new ArrayList<>();

    // 已选列维度
    private List<TextSelected> textFields2 = new ArrayList<>();

    // 已选指标
    private List<NumberSelected> numberFields = new ArrayList<>();

    // 已选分组
    private String selectedGroup = "";


    public String getToken() {
        return token;
    }

    public void setToken(String token) {
        this.token = token;
    }

    // 表格展示出来之后，在表格表头中再次选择升序或降序的所有列的有序集合
    private LinkedHashMap<String, String> columnResortedMap = new LinkedHashMap<>();

    public String getModelId() {
        return modelId;
    }

    public void setModelId(String modelId) {
        this.modelId = modelId;
    }

    public String getUnitId() {
        return unitId;
    }

    public void setUnitId(String unitId) {
        this.unitId = unitId;
    }

    public String getUnitName() {
        return unitName;
    }

    public void setUnitName(String unitName) {
        this.unitName = unitName;
    }

    public String[] getSqlColumn() {
        return sqlColumn;
    }

    public void setSqlColumn(String[] sqlColumn) {
        this.sqlColumn = sqlColumn;
    }

    public String getTableId() {
        return tableId;
    }

    public void setTableId(String tableId) {
        this.tableId = tableId;
    }

    public Integer getPageNum() {
        return pageNum;
    }

    public void setPageNum(Integer pageNum) {
        this.pageNum = pageNum;
    }

    public Integer getPageSize() {
        return pageSize;
    }

    public void setPageSize(Integer pageSize) {
        this.pageSize = pageSize;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public List<TDataCondVo> getCondition() {
        return condition;
    }

    public void setCondition(List<TDataCondVo> condition) {
        this.condition = condition;
    }

    public String getWidgets() {
        return widgets;
    }

    public void setWidgets(String widgets) {
        this.widgets = widgets;
    }

    public List<TextSelected> getTextFields1() {
        return textFields1;
    }

    public void setTextFields1(List<TextSelected> textFields1) {
        this.textFields1 = textFields1;
    }

    public List<TextSelected> getTextFields2() {
        return textFields2;
    }

    public void setTextFields2(List<TextSelected> textFields2) {
        this.textFields2 = textFields2;
    }

    public List<NumberSelected> getNumberFields() {
        return numberFields;
    }

    public void setNumberFields(List<NumberSelected> numberFields) {
        this.numberFields = numberFields;
    }

    public String getSelectedGroup() {
        return selectedGroup;
    }

    public void setSelectedGroup(String selectedGroup) {
        this.selectedGroup = selectedGroup;
    }

    public LinkedHashMap<String, String> getColumnResortedMap() {
        return columnResortedMap;
    }

    public void setColumnResortedMap(LinkedHashMap<String, String> columnResortedMap) {
        this.columnResortedMap = columnResortedMap;
    }

    public String getThemes() {
        return themes;
    }

    public void setThemes(String themes) {
        this.themes = themes;
    }

}
